//
// Created by Administrator on 2023/6/27.
//

#ifndef WEAKCALLBACK_WIDGETFACTORY_H
#define WEAKCALLBACK_WIDGETFACTORY_H

#include "Widget.h"
#include <memory>


class WidgetFactory {
    class Impl;
    std::shared_ptr<Impl> pImpl_;
public:
    WidgetFactory();
    ~WidgetFactory();
    /*!
     * 如果对象已经存在，直接返回；如果不存在，创建对应索引的对象
     * @param id
     * @return
     */
    std::shared_ptr<Widget> getWidget(int id);

};


#endif //WEAKCALLBACK_WIDGETFACTORY_H
